<!DOCTYPE html>
<html>

<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no" />

  <title>伸缩版搜索框</title>
  <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" />

  <style>
    .search-box {
      /* 绝对定位 水平垂直居中 */
      position: absolute;
      top: 5%;
      left: 80%;
      transform: translate(-50%, -50%);
      background-color: #2f3640;
      height: 40px;
      padding: 10px;
      border-radius: 40px;
    }

    .search-txt {
      border: none;
      background: none;
      outline: none;
      float: left;
      padding: 0;
      color: #fff;
      font-size: 16px;
      line-height: 40px;
      width: 0;
      /* 动画过渡 */
      transition: 0.4s;
    }

    .search-btn {
      color: #e84118;
      float: right;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background-color: #2f3640;
      /* 弹性布局 水平垂直居中 */
      display: flex;
      justify-content: center;
      align-items: center;
      cursor: pointer;
      /* 动画过渡 */
      transition: 0.4s;
    }

    .search-box:hover .search-txt {
      width: 200px;
      padding: 0 6px;
    }

    .search-box:hover .search-btn {
      background-color: #fff;
    }
  </style>
</head>

<body>
  <div class="search-box">
    <input type="text" class="search-txt" placeholder="搜索一下" />
    <a class="search-btn">
      <i class="fa fa-search" aria-hidden="true"></i>
    </a>
  </div>
</body>

</html>